package com.ruoyi.an.mapper;

import com.ruoyi.an.domain.AnMechanismSettlementInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 机构推广用户结算信息Mapper接口
 * 
 * @author liuzheng
 * @date 2022-11-12
 */
public interface AnMechanismSettlementInfoMapper 
{
    /**
     * 查询机构推广用户结算信息
     * 
     * @param wechatUserId 机构推广用户结算信息主键
     * @return 机构推广用户结算信息
     */
    public AnMechanismSettlementInfo selectAnMechanismSettlementInfoByWechatUserId(Long wechatUserId);

    /**
     * 查询机构推广用户结算信息列表
     * 
     * @param anMechanismSettlementInfo 机构推广用户结算信息
     * @return 机构推广用户结算信息集合
     */
    public List<AnMechanismSettlementInfo> selectAnMechanismSettlementInfoList(AnMechanismSettlementInfo anMechanismSettlementInfo);

    /**
     * 新增机构推广用户结算信息
     * 
     * @param anMechanismSettlementInfo 机构推广用户结算信息
     * @return 结果
     */
    public int insertAnMechanismSettlementInfo(AnMechanismSettlementInfo anMechanismSettlementInfo);

    /**
     * 修改机构推广用户结算信息
     * 
     * @param anMechanismSettlementInfo 机构推广用户结算信息
     * @return 结果
     */
    public int updateAnMechanismSettlementInfo(AnMechanismSettlementInfo anMechanismSettlementInfo);
    public int updateAnMechanismSettlementInfoStatus(@Param("settlementStatus") Integer settlementStatus,@Param("mechanismSettlementId")  Long mechanismSettlementId,
            @Param("updateBy")  String updateBy
    );

    /**
     * 删除机构推广用户结算信息
     * 
     * @param wechatUserId 机构推广用户结算信息主键
     * @return 结果
     */
    public int deleteAnMechanismSettlementInfoByWechatUserId(Long wechatUserId);

    /**
     * 批量删除机构推广用户结算信息
     * 
     * @param wechatUserIds 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteAnMechanismSettlementInfoByWechatUserIds(Long[] wechatUserIds);
}
